package com.example.innovate.domain;

import java.util.ArrayList;
import java.util.List;

public class CreatedClassDOExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CreatedClassDOExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andClassIdIsNull() {
            addCriterion("class_id is null");
            return (Criteria) this;
        }

        public Criteria andClassIdIsNotNull() {
            addCriterion("class_id is not null");
            return (Criteria) this;
        }

        public Criteria andClassIdEqualTo(Integer value) {
            addCriterion("class_id =", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotEqualTo(Integer value) {
            addCriterion("class_id <>", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdGreaterThan(Integer value) {
            addCriterion("class_id >", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("class_id >=", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdLessThan(Integer value) {
            addCriterion("class_id <", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdLessThanOrEqualTo(Integer value) {
            addCriterion("class_id <=", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdIn(List<Integer> values) {
            addCriterion("class_id in", values, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotIn(List<Integer> values) {
            addCriterion("class_id not in", values, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdBetween(Integer value1, Integer value2) {
            addCriterion("class_id between", value1, value2, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotBetween(Integer value1, Integer value2) {
            addCriterion("class_id not between", value1, value2, "classId");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameIsNull() {
            addCriterion("class_base_name is null");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameIsNotNull() {
            addCriterion("class_base_name is not null");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameEqualTo(String value) {
            addCriterion("class_base_name =", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameNotEqualTo(String value) {
            addCriterion("class_base_name <>", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameGreaterThan(String value) {
            addCriterion("class_base_name >", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameGreaterThanOrEqualTo(String value) {
            addCriterion("class_base_name >=", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameLessThan(String value) {
            addCriterion("class_base_name <", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameLessThanOrEqualTo(String value) {
            addCriterion("class_base_name <=", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameLike(String value) {
            addCriterion("class_base_name like", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameNotLike(String value) {
            addCriterion("class_base_name not like", value, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameIn(List<String> values) {
            addCriterion("class_base_name in", values, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameNotIn(List<String> values) {
            addCriterion("class_base_name not in", values, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameBetween(String value1, String value2) {
            addCriterion("class_base_name between", value1, value2, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBaseNameNotBetween(String value1, String value2) {
            addCriterion("class_base_name not between", value1, value2, "classBaseName");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeIsNull() {
            addCriterion("class_belong_college is null");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeIsNotNull() {
            addCriterion("class_belong_college is not null");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeEqualTo(String value) {
            addCriterion("class_belong_college =", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeNotEqualTo(String value) {
            addCriterion("class_belong_college <>", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeGreaterThan(String value) {
            addCriterion("class_belong_college >", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeGreaterThanOrEqualTo(String value) {
            addCriterion("class_belong_college >=", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeLessThan(String value) {
            addCriterion("class_belong_college <", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeLessThanOrEqualTo(String value) {
            addCriterion("class_belong_college <=", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeLike(String value) {
            addCriterion("class_belong_college like", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeNotLike(String value) {
            addCriterion("class_belong_college not like", value, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeIn(List<String> values) {
            addCriterion("class_belong_college in", values, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeNotIn(List<String> values) {
            addCriterion("class_belong_college not in", values, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeBetween(String value1, String value2) {
            addCriterion("class_belong_college between", value1, value2, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassBelongCollegeNotBetween(String value1, String value2) {
            addCriterion("class_belong_college not between", value1, value2, "classBelongCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeIsNull() {
            addCriterion("class_found_college is null");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeIsNotNull() {
            addCriterion("class_found_college is not null");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeEqualTo(String value) {
            addCriterion("class_found_college =", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeNotEqualTo(String value) {
            addCriterion("class_found_college <>", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeGreaterThan(String value) {
            addCriterion("class_found_college >", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeGreaterThanOrEqualTo(String value) {
            addCriterion("class_found_college >=", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeLessThan(String value) {
            addCriterion("class_found_college <", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeLessThanOrEqualTo(String value) {
            addCriterion("class_found_college <=", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeLike(String value) {
            addCriterion("class_found_college like", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeNotLike(String value) {
            addCriterion("class_found_college not like", value, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeIn(List<String> values) {
            addCriterion("class_found_college in", values, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeNotIn(List<String> values) {
            addCriterion("class_found_college not in", values, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeBetween(String value1, String value2) {
            addCriterion("class_found_college between", value1, value2, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundCollegeNotBetween(String value1, String value2) {
            addCriterion("class_found_college not between", value1, value2, "classFoundCollege");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeIsNull() {
            addCriterion("class_found_time is null");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeIsNotNull() {
            addCriterion("class_found_time is not null");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeEqualTo(String value) {
            addCriterion("class_found_time =", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeNotEqualTo(String value) {
            addCriterion("class_found_time <>", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeGreaterThan(String value) {
            addCriterion("class_found_time >", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeGreaterThanOrEqualTo(String value) {
            addCriterion("class_found_time >=", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeLessThan(String value) {
            addCriterion("class_found_time <", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeLessThanOrEqualTo(String value) {
            addCriterion("class_found_time <=", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeLike(String value) {
            addCriterion("class_found_time like", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeNotLike(String value) {
            addCriterion("class_found_time not like", value, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeIn(List<String> values) {
            addCriterion("class_found_time in", values, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeNotIn(List<String> values) {
            addCriterion("class_found_time not in", values, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeBetween(String value1, String value2) {
            addCriterion("class_found_time between", value1, value2, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassFoundTimeNotBetween(String value1, String value2) {
            addCriterion("class_found_time not between", value1, value2, "classFoundTime");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeIsNull() {
            addCriterion("class_group_name_college is null");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeIsNotNull() {
            addCriterion("class_group_name_college is not null");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeEqualTo(String value) {
            addCriterion("class_group_name_college =", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeNotEqualTo(String value) {
            addCriterion("class_group_name_college <>", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeGreaterThan(String value) {
            addCriterion("class_group_name_college >", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeGreaterThanOrEqualTo(String value) {
            addCriterion("class_group_name_college >=", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeLessThan(String value) {
            addCriterion("class_group_name_college <", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeLessThanOrEqualTo(String value) {
            addCriterion("class_group_name_college <=", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeLike(String value) {
            addCriterion("class_group_name_college like", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeNotLike(String value) {
            addCriterion("class_group_name_college not like", value, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeIn(List<String> values) {
            addCriterion("class_group_name_college in", values, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeNotIn(List<String> values) {
            addCriterion("class_group_name_college not in", values, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeBetween(String value1, String value2) {
            addCriterion("class_group_name_college between", value1, value2, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassGroupNameCollegeNotBetween(String value1, String value2) {
            addCriterion("class_group_name_college not between", value1, value2, "classGroupNameCollege");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageIsNull() {
            addCriterion("class_introduce_image is null");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageIsNotNull() {
            addCriterion("class_introduce_image is not null");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageEqualTo(String value) {
            addCriterion("class_introduce_image =", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageNotEqualTo(String value) {
            addCriterion("class_introduce_image <>", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageGreaterThan(String value) {
            addCriterion("class_introduce_image >", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageGreaterThanOrEqualTo(String value) {
            addCriterion("class_introduce_image >=", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageLessThan(String value) {
            addCriterion("class_introduce_image <", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageLessThanOrEqualTo(String value) {
            addCriterion("class_introduce_image <=", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageLike(String value) {
            addCriterion("class_introduce_image like", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageNotLike(String value) {
            addCriterion("class_introduce_image not like", value, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageIn(List<String> values) {
            addCriterion("class_introduce_image in", values, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageNotIn(List<String> values) {
            addCriterion("class_introduce_image not in", values, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageBetween(String value1, String value2) {
            addCriterion("class_introduce_image between", value1, value2, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceImageNotBetween(String value1, String value2) {
            addCriterion("class_introduce_image not between", value1, value2, "classIntroduceImage");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextIsNull() {
            addCriterion("class_introduce_text is null");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextIsNotNull() {
            addCriterion("class_introduce_text is not null");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextEqualTo(String value) {
            addCriterion("class_introduce_text =", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextNotEqualTo(String value) {
            addCriterion("class_introduce_text <>", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextGreaterThan(String value) {
            addCriterion("class_introduce_text >", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextGreaterThanOrEqualTo(String value) {
            addCriterion("class_introduce_text >=", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextLessThan(String value) {
            addCriterion("class_introduce_text <", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextLessThanOrEqualTo(String value) {
            addCriterion("class_introduce_text <=", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextLike(String value) {
            addCriterion("class_introduce_text like", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextNotLike(String value) {
            addCriterion("class_introduce_text not like", value, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextIn(List<String> values) {
            addCriterion("class_introduce_text in", values, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextNotIn(List<String> values) {
            addCriterion("class_introduce_text not in", values, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextBetween(String value1, String value2) {
            addCriterion("class_introduce_text between", value1, value2, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassIntroduceTextNotBetween(String value1, String value2) {
            addCriterion("class_introduce_text not between", value1, value2, "classIntroduceText");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeIsNull() {
            addCriterion("class_listing_time is null");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeIsNotNull() {
            addCriterion("class_listing_time is not null");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeEqualTo(String value) {
            addCriterion("class_listing_time =", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeNotEqualTo(String value) {
            addCriterion("class_listing_time <>", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeGreaterThan(String value) {
            addCriterion("class_listing_time >", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeGreaterThanOrEqualTo(String value) {
            addCriterion("class_listing_time >=", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeLessThan(String value) {
            addCriterion("class_listing_time <", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeLessThanOrEqualTo(String value) {
            addCriterion("class_listing_time <=", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeLike(String value) {
            addCriterion("class_listing_time like", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeNotLike(String value) {
            addCriterion("class_listing_time not like", value, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeIn(List<String> values) {
            addCriterion("class_listing_time in", values, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeNotIn(List<String> values) {
            addCriterion("class_listing_time not in", values, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeBetween(String value1, String value2) {
            addCriterion("class_listing_time between", value1, value2, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassListingTimeNotBetween(String value1, String value2) {
            addCriterion("class_listing_time not between", value1, value2, "classListingTime");
            return (Criteria) this;
        }

        public Criteria andClassNameIsNull() {
            addCriterion("class_name is null");
            return (Criteria) this;
        }

        public Criteria andClassNameIsNotNull() {
            addCriterion("class_name is not null");
            return (Criteria) this;
        }

        public Criteria andClassNameEqualTo(String value) {
            addCriterion("class_name =", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameNotEqualTo(String value) {
            addCriterion("class_name <>", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameGreaterThan(String value) {
            addCriterion("class_name >", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameGreaterThanOrEqualTo(String value) {
            addCriterion("class_name >=", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameLessThan(String value) {
            addCriterion("class_name <", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameLessThanOrEqualTo(String value) {
            addCriterion("class_name <=", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameLike(String value) {
            addCriterion("class_name like", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameNotLike(String value) {
            addCriterion("class_name not like", value, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameIn(List<String> values) {
            addCriterion("class_name in", values, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameNotIn(List<String> values) {
            addCriterion("class_name not in", values, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameBetween(String value1, String value2) {
            addCriterion("class_name between", value1, value2, "className");
            return (Criteria) this;
        }

        public Criteria andClassNameNotBetween(String value1, String value2) {
            addCriterion("class_name not between", value1, value2, "className");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyIsNull() {
            addCriterion("class_out_teacher_company is null");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyIsNotNull() {
            addCriterion("class_out_teacher_company is not null");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyEqualTo(String value) {
            addCriterion("class_out_teacher_company =", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyNotEqualTo(String value) {
            addCriterion("class_out_teacher_company <>", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyGreaterThan(String value) {
            addCriterion("class_out_teacher_company >", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyGreaterThanOrEqualTo(String value) {
            addCriterion("class_out_teacher_company >=", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyLessThan(String value) {
            addCriterion("class_out_teacher_company <", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyLessThanOrEqualTo(String value) {
            addCriterion("class_out_teacher_company <=", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyLike(String value) {
            addCriterion("class_out_teacher_company like", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyNotLike(String value) {
            addCriterion("class_out_teacher_company not like", value, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyIn(List<String> values) {
            addCriterion("class_out_teacher_company in", values, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyNotIn(List<String> values) {
            addCriterion("class_out_teacher_company not in", values, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyBetween(String value1, String value2) {
            addCriterion("class_out_teacher_company between", value1, value2, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassOutTeacherCompanyNotBetween(String value1, String value2) {
            addCriterion("class_out_teacher_company not between", value1, value2, "classOutTeacherCompany");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameIsNull() {
            addCriterion("class_teacher_name is null");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameIsNotNull() {
            addCriterion("class_teacher_name is not null");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameEqualTo(String value) {
            addCriterion("class_teacher_name =", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameNotEqualTo(String value) {
            addCriterion("class_teacher_name <>", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameGreaterThan(String value) {
            addCriterion("class_teacher_name >", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameGreaterThanOrEqualTo(String value) {
            addCriterion("class_teacher_name >=", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameLessThan(String value) {
            addCriterion("class_teacher_name <", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameLessThanOrEqualTo(String value) {
            addCriterion("class_teacher_name <=", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameLike(String value) {
            addCriterion("class_teacher_name like", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameNotLike(String value) {
            addCriterion("class_teacher_name not like", value, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameIn(List<String> values) {
            addCriterion("class_teacher_name in", values, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameNotIn(List<String> values) {
            addCriterion("class_teacher_name not in", values, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameBetween(String value1, String value2) {
            addCriterion("class_teacher_name between", value1, value2, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherNameNotBetween(String value1, String value2) {
            addCriterion("class_teacher_name not between", value1, value2, "classTeacherName");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneIsNull() {
            addCriterion("class_teacher_phone is null");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneIsNotNull() {
            addCriterion("class_teacher_phone is not null");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneEqualTo(String value) {
            addCriterion("class_teacher_phone =", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneNotEqualTo(String value) {
            addCriterion("class_teacher_phone <>", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneGreaterThan(String value) {
            addCriterion("class_teacher_phone >", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("class_teacher_phone >=", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneLessThan(String value) {
            addCriterion("class_teacher_phone <", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneLessThanOrEqualTo(String value) {
            addCriterion("class_teacher_phone <=", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneLike(String value) {
            addCriterion("class_teacher_phone like", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneNotLike(String value) {
            addCriterion("class_teacher_phone not like", value, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneIn(List<String> values) {
            addCriterion("class_teacher_phone in", values, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneNotIn(List<String> values) {
            addCriterion("class_teacher_phone not in", values, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneBetween(String value1, String value2) {
            addCriterion("class_teacher_phone between", value1, value2, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassTeacherPhoneNotBetween(String value1, String value2) {
            addCriterion("class_teacher_phone not between", value1, value2, "classTeacherPhone");
            return (Criteria) this;
        }

        public Criteria andClassElseIsNull() {
            addCriterion("class_else is null");
            return (Criteria) this;
        }

        public Criteria andClassElseIsNotNull() {
            addCriterion("class_else is not null");
            return (Criteria) this;
        }

        public Criteria andClassElseEqualTo(String value) {
            addCriterion("class_else =", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseNotEqualTo(String value) {
            addCriterion("class_else <>", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseGreaterThan(String value) {
            addCriterion("class_else >", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseGreaterThanOrEqualTo(String value) {
            addCriterion("class_else >=", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseLessThan(String value) {
            addCriterion("class_else <", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseLessThanOrEqualTo(String value) {
            addCriterion("class_else <=", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseLike(String value) {
            addCriterion("class_else like", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseNotLike(String value) {
            addCriterion("class_else not like", value, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseIn(List<String> values) {
            addCriterion("class_else in", values, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseNotIn(List<String> values) {
            addCriterion("class_else not in", values, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseBetween(String value1, String value2) {
            addCriterion("class_else between", value1, value2, "classElse");
            return (Criteria) this;
        }

        public Criteria andClassElseNotBetween(String value1, String value2) {
            addCriterion("class_else not between", value1, value2, "classElse");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}